/*********************************************
 * THE BEERWARE LICENSE (Revision 42):
 *
 * As long as you retain this notice you can
 * do whatever you want with this stuff. If we
 * meet some day, and you think this stuff is 
 * worth it, you can buy me a drink in return.
 */

#ifndef _OBJECT_H_
#define _OBJECT_H_

#include <ode/ode.h>

class CObject
{
/* Members */
public:

  typedef enum _OBJECT_TYPE
  {
    OT_1 = 0,
    OT_2,
    OT_3
  }OBJECT_TYPE;

  typedef enum _OBJECT_COLOR
  {
    OC_NONE = 0,
    OC_GREY,
    OC_RED,
    OC_BLUE,
    OC_YELLOW,
    OC_GREEN
  }OBJECT_COLOR;

private:

  dMass m;
  dBodyID body;
  dGeomID geom;

  OBJECT_TYPE type;
  OBJECT_COLOR color;

/* Functions */
public:

  CObject(dWorldID world, dSpaceID space,
          double x, double y, double z,
          OBJECT_TYPE t, OBJECT_COLOR c,
          double mass);

  ~CObject();

	dBodyID get_body() { return this->body;};

	dGeomID get_geom() { return this->geom;};
	
  OBJECT_COLOR get_color() { return this->color; };

  OBJECT_TYPE get_type() { return this->type; };

  void set_position(dReal, dReal, dReal);

  void set_speed(dReal, dReal, dReal);

private:

};



#endif /*_OBJECT_H_*/
